<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>jquery页面加载</title>
    <meta name="description" content="页面加载事件和鼠标事件">
    <style>
        div {
            width: 200px;
            height: 200px;
            background: linear-gradient(to right, yellow, cyan, blue);
            transition: all 0.5s ease-in;
        }

        .click {
            border-radius: 25%;

        }

        .dbclick {
            border-radius: 50%;
            
        }

        .mouseover {
            border-top-left-radius: 50%;
        }

        .mouseout {
            border-bottom-right-radius: 50%;
        }
        .tap{
            border: 10px solid #ccc;
            box-shadow: 2px 2px 6px rgba(255, 255, 255,0.8)
                        inset -2px -2px 6px rgba(0, 0, 0,0.8);
        }
    </style>
</head>

<body>
      <div id="demo"></div>
</body>
<script src="../jquery-3.6.3.js"></script>
<script>
    /*jquery加载事件 页面加载完毕执行ready方法调用的实参 匿名回调函数*/
    $(document).ready(function () {
        //鼠标左键按下
        $("#demo").mousedown(function(){
            // console.log("按下")
            $(this).addClass("tap")
        })
        $("#demo").mouseup(function(){
            // console.log("松开");
            $(this).removeClass("tap")
        })
        //鼠标左键松开
        //用户单击id是demo的标签时 给他加一个css类
        $("#demo").click(function () {
            //this所在是$("#demo")所以this就是#demo的标签
            $(this).removeClass();//防止类污染 先删除所有的类值
            $(this).addClass("click")//添加类值click

        });
        $("#demo").dblclick(function () {

            $(this).removeClass();
            $(this).addClass("dbclick")
        })
        //鼠标放到元素上执行
        $("#demo").mouseover(function () {
            $(this).addClass("mouseover")
        })
        //鼠标离开生效
        $("#demo").mouseout(function () {
            $(this).addClass("mouseout")
        })    
            //鼠标移动时触发（多次触发）
        $("#demo").mousemove(function(event){//形参event中记录元素的一些特征
            //MAth数学对象 Math。random()会返回一个0~1的随机小数
            //随即小数*255 就代表变成0~255随机数(带小数的)
            //parseInt把小数变成整数
            let num = parseInt(Math.random()*255)
            // console.log(event.offsetX,event.offsetY);
            $(this).css("background", `rgb(${num},${event.offsetX},${event.offsetY})`)
        })
        
    })
</script>

</html>